﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; using Montana.DAC;

namespace Montana.Entidades
{
    public class FacturaProducto : Datos<FacturaProducto>
    {
        public int IDFactura { get; set; }
        public int IDProducto { get; set; }
        public decimal Cantidad { get; set; }
        public decimal Importeunitario { get; set; }
        public decimal Importetotal { get; set; }
        public string Espreciomanoobra { get; set; }
        public string Datocontable { get; set; }

        public string Codigoproducto { get; set; }
        public string Producto { get; set; }

        public decimal Pesounitario { get; set; }
        public string Sumarensaldoresago { get; set; }

        public void Guardar()
        {
            string sql = @"insert into facturaproducto (idfactura, idproducto, cantidad, importeunitario, importetotal, espreciomanoobra, datocontable, pesounitario, Sumarensaldoresago) 
                        values (@idfactura, @idproducto, @cantidad, @importeunitario, @importetotal, @espreciomanoobra, @datocontable, @pesounitario, @Sumarensaldoresago)";

            Ejecutar(sql, this);
        }

        protected override string SQLBasico
        {
            get { return @"select fp.*, '' as Nombre, p.codigo as codigoproducto, p.nombre as producto
                            from (facturaproducto fp inner join producto p on fp.idproducto=p.id)"; }
        }

        public List<FacturaProducto> BuscarPorIDFactura(int idFactura)
        {
            return TraerObjetos(SQLBasico + " where idfactura=@idfactura", idFactura);
        }
    }
}
